User profile based audio adjustment techniques

ABSTRACT

Embodiments are directed toward user profile based audio adjustment techniques. The techniques are used to render various audio and/or audio/video content having different audio output parameter values in accordance with a user profile that characterizes a user&#39;s desired value and/or range of one or more of the output parameter levels.

BACKGROUND OF THE INVENTION

Computing devices have made significant contributions toward theadvancement of modern society and are utilized in a number ofapplications to achieve advantageous results. Numerous devices, such asdigital music players (e.g., MP3 players), smart phones, laptopcomputers, tablet computers, TVs, DVD players, game consoles, desk topcomputers and the like have facilitated increased consumption of contentin most areas of entertainment, education, business and science.Computing devices have also made it faster, easier and cheaper to accesscontent of all types in digital form. The convenience of having contentmore readily accessible typically results in users accessing contentmore often and may also result in users acquiring ever-increasingamounts of content from various sources.

The audio and/or audio video content from different sources may beencoded according to different standards. The different standards mayresult in different audio output levels when the content is played on agiven electronic device. Even for content encoded according to the samestandard, different content may be recoded at different audio levelsresulting in different audio output levels when the content is played onthe electronic device.

The various audio and/or audio/video content having different audiooutput level can result in users experiencing unexpected changes in theaudio output level when listening to such content. The proliferation ofplaylists including audio and/or audio/video content having one or morediffering audio output levels can increase the occurrence of beingsubjected to unexpected changes in the audio output levels. Thediffering audio output levels can be distracting or even harmful to theuser. For example, a first item of audio or audio/video content may berendered at a relatively low volume causing the user to increase thevolume level. Thereafter a second item of content may be rendered at amuch higher volume level that is further increased by the volumeadjustment made by the user in response to the level of the first itemof content. When the difference is too great, it may cause discomfort oreven damage or loss of hearing. Accordingly, there is a continuing needfor improved audio rendering techniques.

SUMMARY OF THE INVENTION

The present technology may best be understood by referring to thefollowing description and accompanying drawings that are used toillustrate embodiments of the present technology.

In one embodiment, a user profile based audio adjustment techniqueincludes rendering one or more audio or audio/video configurationsamples and receiving one or more user adjustments of one or more audiooutput parameters in response to the rendered audio or audio/videoconfiguration samples. One or more user adjusted audio output parameterlevels and/or ranges are determined from the adjustments and are storedas a user audio profile.

In another embodiment, a user profile based audio adjustment techniqueincludes receiving any of a plurality of audio or audio/video contenthaving one or more differing audio output parameter levels and receivinga user audio profile. One or more audio output parameters of the audioor audio/video content are adjusted during rendering in accordance withthe user audio profile.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present technology are illustrated by way of exampleand not by way of limitation, in the figures of the accompanyingdrawings and in which like reference numerals refer to similar elementsand in which:

FIG. 1 shows a block diagram of an exemplary electronic device, forimplementing embodiments of the present technology.

FIG. 2 shows a block diagram of another exemplary electronic device, forimplementing embodiments of the present technology.

FIG. 3 shows a flow diagram of a method of configuring a user profilefor controlling an audio level, in accordance with one embodiment of thepresent technology.

FIG. 4 shows a flow diagram of a method of controlling an audio outputlevel based on a user profile, in accordance with one embodiment of thepresent technology.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the embodiments of the presenttechnology, examples of which are illustrated in the accompanyingdrawings. While the present technology will be described in conjunctionwith these embodiments, it will be understood that they are not intendedto limit the invention to these embodiments. On the contrary, theinvention is intended to cover alternatives, modifications andequivalents, which may be included within the scope of the invention asdefined by the appended claims. Furthermore, in the following detaileddescription of the present technology, numerous specific details are setforth in order to provide a thorough understanding of the presenttechnology. However, it is understood that the present technology may bepracticed without these specific details. In other instances, well-knownmethods, procedures, components, and circuits have not been described indetail as not to unnecessarily obscure aspects of the presenttechnology.

Some embodiments of the present technology which follow are presented interms of routines, modules, logic blocks, and other symbolicrepresentations of operations on data within one or more electronicdevices. The descriptions and representations are the means used bythose skilled in the art to most effectively convey the substance oftheir work to others skilled in the art. A routine, module, logic blockand/or the like, is herein, and generally, conceived to be aself-consistent sequence of processes or instructions leading to adesired result. The processes are those including physical manipulationsof physical quantities. Usually, though not necessarily, these physicalmanipulations take the form of electric or magnetic signals capable ofbeing stored, transferred, compared and otherwise manipulated in anelectronic device. For reasons of convenience, and with reference tocommon usage, these signals are referred to as data, bits, values,elements, symbols, characters, terms, numbers, strings, and/or the likewith reference to embodiments of the present technology.

It should be borne in mind, however, that all of these terms are to beinterpreted as referencing physical manipulations and quantities and aremerely convenient labels and are to be interpreted further in view ofterms commonly used in the art. Unless specifically stated otherwise asapparent from the following discussion, it is understood that throughoutdiscussions of the present technology, discussions utilizing the termssuch as “receiving,” and/or the like, refer to the actions and processesof an electronic device such as an electronic computing device thatmanipulates and transforms data. The data is represented as physical(e.g., electronic) quantities within the electronic device's logiccircuits, registers, memories and/or the like, and is transformed intoother data similarly represented as physical quantities within theelectronic device.

In this application, the use of the disjunctive is intended to includethe conjunctive. The use of definite or indefinite articles is notintended to indicate cardinality. In particular, a reference to “the”object or “a” object is intended to denote also one of a possibleplurality of such objects. It is also to be understood that thephraseology and terminology used herein is for the purpose ofdescription and should not be regarded as limiting.

Referring now to FIG. 1, an exemplary electronic device, forimplementing embodiments of the present technology, is shown. Theelectronic device 100 may be a digital music player, a smart phone,personal digital assistant, game console, or the like. The electronicdevice renders audio and/or audio/video content such as music, movies,games, voice communication, and the like.

The electronic device 100 may include one or more processing units 105,110, one or more computing device readable media (e.g., memory) 115, onemore input/outputs 120-145, and the like, communicatively coupledtogether by one or more buses 145. For example, a digital music player,a smart phone, personal digital assistant, game console, or the like,may include a microcontroller 105, a digital signal processor 110,memory 115, a display 120, a data port 125, an audio amplifier 130, anaudio port 135, and other input/output interfaces 140, and/or the like.The data port 125 may be a USB port, FireWire port, parallel port or thelike. The display 120 may be an LCD display, touch screen display or thelike. The other input/output interfaces 140 may include a microphone,buttons, switches and/or the like for controlling operation of theelectronic device.

The memory 115 may include solid state memory such as flash memory,magnetic memory such as a micro hard drive, and/or the like. The memory115 provides for storage of computing device readable instructions anddata. Generally, the microcontroller 105, executing one or moreapplications, utilities or the like, stored in the memory 115, receivescontent (encoded data such as MP3, MPEG, or the like files) on the dataport 125. The microcontroller 105, executing one or more application,utilities or the like, stores the received content in the memory 115.One or more applications, utilities or the like may provide forreceiving content in various formats (copy content from radio, compactdiscs, web sites, or the like). One or more applications, utilities orthe like may provide for organizing the content in playlists or thelike. The microcontroller 105 and/or digital signal processor 110,thereafter, executing one or more applications utilities or the like,stored in the memory 115, may render the audio or audio/video contentstored in the memory 115 as audio on the audio port 135, or one or morespeakers, headphones or the like integral to the electronic device.Similarly, the microcontroller 105 and/or digital signal processor 110may render audio/video content on the display 120 and the audio port135.

Generally, the microcontroller 105 executing one or more applications,utilities or the like, sends instructions and data to the digital signalprocessor 110 to control the processing of the audio or audio/videocontent. The digital signal processor 110 decodes (e.g., uncompress) theaudio or audio/video content encoded in one or more formats. Even withinone format, different audio content may be encoded with different volumelevels (e.g., min, max, average). The audio content or the audio portionof audio/video content may be converted by the digital signal processor100 into an analog signal. The amplifier 130 amplifies the analog signalfor driving one or more speakers, headphones or the like, coupled to theaudio port 135 or integral to the electronic device.

Generally, the microcontroller 105 executing one or more applications,utilities or the like, may also monitor user inputs received on one ormore user input/output interfaces 140, a touch screen display 120,and/or the like. The microcontroller 105 executing one or moreapplications, utilities or the like, may also display information aboutthe operation of the electronic device, the content, and/or the like onthe display 120.

The microcontroller 105 executing one or more applications, utilities orthe like may also implement functions for audio configuration andcontrol based on a user audio profile. The functions may provide forconfiguring a user audio profile and/or the adjustment of one or moreaudio output parameters. In other implementations, one or more functionsfor configuring and controlling one or more audio output parametersbased upon a user audio profile may be implemented in hardware.

Referring now to FIG. 2, another exemplary electronic device, forimplementing embodiments of the present technology, is shown. Theelectronic device 200 may be a desktop personal computer, laptopcomputer, game console, personal entertainment center, media center PC,tablet PC or the like. The electronic device 200 may include one or moregeneral purpose processors (e.g., CPU) 210, one or more computingdevice-readable media 215, 220, 225, and one or more input/output (I/O)devices 230-245 communicatively coupled together by one or more buses.The I/O devices 230-245 may include a network adapter (e.g., Ethernetcard), CD drive, DVD drive and/or the like, and peripherals such as akeyboard, a pointing device, a speaker, a microphone, a printer, and/orthe like. The electronic device may also include one or more specializedprocessors, such as a graphics processing unit (GPU) 250.

The computing device-readable media 215-225, I/O devices 230-245, andGPU 250 may be communicatively coupled to the processor 210 by a chipset 270 and one or more busses. The chipset 270 acts as a simpleinput/output hub for communicating data and instructions between theprocessor 210 and the computing device-readable media 215-220, I/Odevices 230-245, and the GPU 250.

The computing device-readable media 215-225 may be characterized asprimary memory and secondary memory. Generally, the secondary memory,such as a magnetic and/or optical storage, provides for non-volatilestorage of computing device readable instructions and data for use bythe electronic device 200. For instance, the disk drive 220 may storethe operating system (OS) 255, applications and data 260, audio volumeconfiguration application and data 265. The primary memory, such as thesystem memory 215 and/or graphics memory 225, provides for volatilestorage of computing device readable instructions and data for use bythe electronic device 200. For instance, the system memory 215 maytemporarily store a portion of the operating system 255′, and a portionof one or more applications and associated data 260′ that are currentlyused by the CPU 210, GPU 250 and the like. The graphics memory 225 maytemporarily store a portion of one or more applications and associateddata, such as the audio volume configuration application and data 265′,that are currently used by the GPU 250.

One or more processing units, such as the GPU 250, executing one or moreapplications, utilities or the like may implement functions for audioconfiguration and control based on a user audio profile. The functionsmay provide for configuring a user audio profile and/or the adjustmentof one or more audio output parameters. In other implementation, one ormore functions for configuring and controlling one or more audio outputparameters based upon a user audio profile may be implemented inhardware of the GPU 250 for example, or the like.

The techniques for automatic feedback and amplitude adjustmentimplemented by electronic device 100, 200), in accordance withembodiments of the present technology, will be further described withreference to FIGS. 3 and 4. A method of configuring a user profile forcontrolling an audio level, in accordance with one embodiment of thepresent technology, is shown in FIG. 3. The method may be implemented inhardware, firmware, as computing device-executable instructions (e.g.,computer program) that are stored in computing device-readable media(e.g., computer memory) and executed by a computing device (e.g.,processor), or any combination thereof, as described with reference toelectronic device 100 and 200 for example.

The method may begin with rendering one or more audio or audio videosamples, at 310, and receiving one or more user adjustments of one ormore audio output parameters of the one or more rendered audio oraudio/video samples, at 320. The user can adjust the desired value orrange for each of one or more parameters. The adjustment can beperformed for multiple audio and/or audio/video samples to improve theaccuracy of the determined user's desired range of each of one or moreparameters.

At 330, one or more user adjusted audio output parameter levels and/orranges are determined. The one or more audio output parameters mayinclude the average audio amplitude, the mean audio amplitude, the peak(e.g., maximum) audio amplitude, the minimum audio amplitude, theinterval between peaks, the interval between minimum values, theinterval between a peak and a minimum value, and/or the like. The one ormore audio output parameter levels and/or ranges may be encoded in adigital and/or analog format

At 340, the one or more user adjusted audio output parameter levels ordata characterizing the adjustments are stored as a user audio profile.The determined user's desired value or range of one or more audio outputparameter levels may be stored in the memory of an electronic device100, 200 as a user audio profile. In one implementation, the desiredmean, minimum and/or peak amplitude for audio output are recorded. Inaddition, to the amplitude of the output, the intervals between thepeaks and minimum values may also be taken into consideration. Forexample, the user may be able to withstand many peaks that are closetogether, while another user may appreciate such a peak but not when thepeak occurs for an extended period.

At optional process 350, the processes of 310-340 may be repeated foreach of a plurality of audio or audio/video groupings. The groupings maybe a plurality of genres, such as rock, pop, rap, and the like. Inanother example, the groupings may be for listening when working,exercising, relaxing, and the like. In yet another example, the groupingmay be for listening when the background (e.g., ambient) noise level islow (e.g., at home), moderate (e.g., in the office), loud (e.g., whilecommuting) and/or the like. In such case the processes of 310-340 may berepeated while sensing the background noise level using a microphone. Inaddition, different grouping types may be combined to determine the oneor more audio output parameters for various combinations.

At optional process 360, the user profile may be exported to one or moreelectronic devices. In one implementation, the user profile may beexported to other compatible electronic devices. The process ofexporting the profile may include converting from a format applicable tothe originating electronic device to a format applicable to thedestination electronic device. Exporting the user profile to one or moreelectronic devices may advantageously eliminate the need for the user toperform the configuration on multiple electronic devices.

Referring now to FIG. 4, a method of controlling an audio output levelbased on a user profile, in accordance with one embodiment of thepresent technology, is shown. The method may be implemented in hardware,firmware, as computing device-executable instructions (e.g., computerprogram) that are stored in computing device-readable media (e.g.,computer memory) and executed by a computing device (e.g., processor),or any combination thereof, as described with reference to electronicdevice 100 and 200 for example.

The method may begin with storing a plurality of audio or audio/videocontent having differing audio output parameter levels in a playlist, atoptional process 410. For example, the audio and/or audio/video contentstored in the playlist may be encoded according to various standards.Even for audio and/or audio video content encoded according to the samestandard, the content may be encoded at one or more audio parameterlevels.

At 420, any of a plurality of audio or audio/video content may bereceived for rendering having one or more differing audio outputparameter levels. The audio or audio/video content may be received frommemory of the electronic device where it is stored in a digital format.The digital formatted audio or audio/video content may be encoded in anyone of a plurality of encoding standards.

At 430, a user audio profile is received. The user audio profile may bereceived from the memory of the electronic device. The user audioprofile specifies a user's desired value or range of one or more audiooutput parameter levels. The desired value or range of the audio outputparameters may be specified in a digital format, in an analog format orcombinations of both. The one or more audio output parameters mayinclude the average audio amplitude, the mean audio amplitude, the peak(e.g., maximum) audio amplitude, the minimum audio amplitude, theinterval between peaks, the interval between minimum values, theinterval between a peak and a minimum value, and/or the like. The userprofile may specify a value or a range of each of one or more audiooutput parameters for each of a plurality of audio and/or audio/videogroupings. The groupings may be a plurality of genres, such as rock,pop, rap, and the like. In another example, the groupings may be forlistening when working, exercising, relaxing, and the like. In yetanother example, the grouping may be for listening when the background(e.g., ambient) noise level is low (e.g., at home), moderate (e.g., inthe office), loud (e.g., while commuting) and/or the like.

At 440, the received audio or audio/video content is rendered, includingadjusting one or more audio output parameters of the content inaccordance with the user audio profile. The audio or audio/video contentmay be rendered by converting the digital data encoded according to anyof a plurality of encoding standards into an analog format having anaudio output in accordance with the one or more audio output parametervalues or ranges specified in the user audio profile. The audio outputparameters may be adjusted while in a digital or analog format inaccordance with the user audio profile. In one implementation, the audiovolume configuration and control application and/or hardware of theelectronic device 100, 200 monitors one or more audio output parametersof the rendered audio output. When one or more audio output parametersgoes outside the value or range specified in the user audio profile, theaudio volume configuration and control application and/or hardware ofthe electronic device 100, 200 adjusts the corresponding one or moreaudio output parameters. For example, the volume (e.g., mean amplitude)may be increased or decreased to maintain the audio output in a desiredrange specified in the user audio profile. The audio output isadvantageously automatically adjusted to the preferred audible level ofthe user, in accordance with one or more audio output parametersspecified in the user audio profile.

At optional process 450, one or more user adjustments of one or moreaudio output parameter levels of the rendered audio or audio/videocontent may be received. At operational process 460, the user audioprofile may be adjusted in accordance with the received user adjustmentof one or more audio output parameter levels of the rendered audio oraudio/video content. For example, if the user lowers the volume, thecomfort zone of the user may have decreased, and hence the mean,minimum, and/or peak amplitude values may be decreased accordingly. Whenadjusting the user profile in response to user adjustment of therendered audio or audio/video the sampling size for determining one ormore user adjusted audio output parameter levels or ranges increases,resulting in an even more accurate user audio profile configuration.

It is also appreciated that portions of the electronic device may beplaced in a low power mode (e.g., sleep or standby mode) when theapplicable circuit is not being used. For example, the user interfacecircuitry may be placed in a low power mode when it is not being usedwhile songs in a playlist are being played. However, if the user has toadjust the audio output level regularly because various songs in theplaylist have different output levels, the user input circuitry willneed to be regularly woken up from its low power mode. Repeatedly wakingup a circuit from a low power mode reduces or eliminates the powersavings of the low power mode. The user profile based audio adjustmenttechniques of the present technology can advantageously improve thepower savings by enabling portions such as the user interface circuitryto remain in the low power mode, because the user is not regularlyadjusting the volume manually.

The foregoing descriptions of specific embodiments of the presenttechnology have been presented for purposes of illustration anddescription. They are not intended to be exhaustive or to limit theinvention to the precise forms disclosed, and obviously manymodifications and variations are possible in light of the aboveteaching. The embodiments were chosen and described in order to bestexplain the principles of the present technology and its practicalapplication, to thereby enable others skilled in the art to best utilizethe present technology and various embodiments with variousmodifications as are suited to the particular use contemplated. It isintended that the scope of the invention be defined by the claimsappended hereto and their equivalents.

What is claimed is:
 1. A method comprising: rendering, using acomputerized playback device, one or more audio or audio/video samples;receiving one or more user adjustments of one or more audio outputparameters of the one or more rendered audio or audio/videoconfiguration samples; and storing the one or more user adjusted audiooutput parameter levels or ranges as a user audio profile for use insubsequent playback of audio, wherein the one or more audio outputparameters comprise an interval between amplitude features.
 2. Themethod of claim 1, wherein the one or more audio output parameterscomprise one or more selected from the group consisting of an averageaudio amplitude, a mean audio amplitude, a peak audio amplitude, aminimum audio amplitude, an interval between amplitude peaks, aninterval between amplitude minimums, and an interval between anamplitude peak and an amplitude minimum.
 3. The method of claim 1,wherein the user audio profile includes data characterizing a user'sdesired value or range of one or more audio output parameter levels. 4.The method of claim 1, comprising repeating the rendering, receiving,determining and storing for each of a plurality of audio or audio/videogroups.
 5. The method of claim 1, comprising exporting the user audioprofile to one or more electronic devices.
 6. The method of claim 1,comprising: receiving any of a plurality of audio or audio/video contenthaving one or more differing audio output parameter levels; receivingthe user audio profile; and rendering the received audio or audio/videocontent including adjusting one or more audio output parameters of theaudio or audio/video content in accordance with the user audio profile.7. The method of claim 6, comprising converting the audio or audio/videocontent in a digital format to an analog format having an audio outputin accordance with one or more audio output parameter values or rangesspecified in the user audio profile.
 8. The method of claim 6,comprising receiving any of the plurality of audio or audio/videocontent from a playlist.
 9. The method of claim 6, comprising: receivinga user adjustment of one or more audio output parameter levels of therendered audio or audio/video content; and adjusting the user audioprofile in accordance with the user adjustment of the one or more audiooutput parameter levels.
 10. The method of claim 1, wherein the intervalis an interval between amplitude peaks.
 11. The method of claim 1,wherein the interval is an interval between amplitude minimums.
 12. Themethod of claim 1, wherein the interval is an interval between anamplitude peak and an amplitude minimum.
 13. The method of claim 1,comprising: determining one or more user adjusted audio output parameterlevels or ranges.
 14. A method comprising: accessing at least one audiodata structure for playback of audio in accordance with playbackparameters; accessing at least one user profile including at least oneadjustment value of one or more audio output parameters; and using aplayback device, playing back audio from the audio data structure inaccordance with the playback parameters being modified by the at leastone adjustment value, wherein the at least one adjustment value of oneor more audio output parameters includes at least one of an intervalbetween amplitude peaks, an interval between amplitude minimums, aninterval between an amplitude peak and an amplitude minimum.
 15. Themethod of claim 14, wherein the at least one adjustment value of one ormore audio output parameters includes an interval between amplitudepeaks.
 16. The method of claim 14, wherein the at least one adjustmentvalue of one or more audio output parameters includes an intervalbetween amplitude minimums.
 17. The method of claim 14, wherein the atleast one adjustment value of one or more audio output parametersincludes an amplitude minimum.
 18. A method comprising: accessing atleast one audio data structure for playback of audio in accordance withplayback parameters; accessing at least one user profile including atleast one adjustment value of one or more audio output parameters; andusing a playback device, playing back audio from the audio datastructure in accordance with the playback parameters being modified bythe at least one adjustment value, wherein the user profile comprises avalue or a range of each of one or more audio output parameters for eachof a plurality of audio and/or audio/video genres and the playbackparameters are modified based at least in part on a genre of the audio.19. A method comprising: accessing at least one audio data structure forplayback of audio in accordance with playback parameters; accessing atleast one user profile including at least one adjustment value of one ormore audio output parameters; and using a playback device, playing backaudio from the audio data structure in accordance with the playbackparameters being modified by the at least one adjustment value, whereinthe user profile comprises a value or a range of each of one or moreaudio output parameters for each of a plurality of activities, and theplayback parameters are modified based at least in part on a currentactivity, the plurality of activities including two or more of working,exercising, relaxing, and commuting.